1. פונקציה שמקבלת מערך, את הגודל שלו ומספר. צריך למצוא אם המספר קיים במערך. אבל מכיוון שהתוכנית רצה על מעבד שפעולות השוואה בו הן מאוד יקרות, צריך לחסוך כמה שניתן בפעולות השוואה. (גם של הלולאה וגם של בדיקת המספר מול המערך).
2. מחיקה של רשומה מרשימה מקושרת חד כיוונית ב (1)o.
3. לממש פונקציה שמקבלת *void, ואת הגודל שלו, ומחזירה את מספר הביטים הדלוקים. להקפיד על יעילות ו casting נכונים.
ראיון HR, ראיון טלפוני עם ראש מחלקה, ראיון זום עם שני ראשי מחלקות, ראיון פיסי עם שני ראשי מחלקה אחרים, ראיון עם CTO, ראיון HR. זהו.
שאלות מתוך הראיון
פונקציה: מקבלת מערך, את הגודל שלו ומספר. מחזירה האם המספר קיים במערך.
נתונים נוספים: רצה על מעבד שפעולות השוואה בו הן מאוד יקרות, אבל אין בעיה להשתמש בפעולות מתמטיות ככל שרוצים.
תשובות
הוסף תשובה
|
לצפיה בתשובות
יוני 2020
מגדירים משתנה var.
עבור כל מספר: מחסירים את המספר המבוקש למציאה מהמספר, כופלים עם VAR, ומשימים לVAR.
בסוף הלולאה, אם VAR == 0 , המספר קיים. אחרת לא
ראיון טכני דרך המחשב בgroups וכתיבת קוד באתר codeinterview.io שמשתף מסך.
היו שני מראיינים שהסבירו על החברה ושאלו על התפקיד הקודם. שניתן לבדוק בעזרתו.
שאלות מתוך הראיון
1. עליך לקבוע בעזרת תכנית פשוטה המחזירה true/false האם הזיכרון במערכת הוא- LittleEndian או-BigEndian
2. נתון מקום ריק בזיכרון שמתחיל בכתובת 1000 ושמחולק ל-1024 בלוקים, בכל צ'אנק יש 1024 בתים.
ממש בעזרת 3 פונקציות - אתחול הזיכרון, תפיסת ושחרורו.
נתון משתנה גלובלי שניתן להעזר בו: uint32_t reg.
(במילים אחרות לממש malloc ו-free באמצעות רשימה מקושרת)